#include <LiquidCrystal.h> 
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);
float Tmin = 0;
float Tmax = 0;

void setup() {
  float Tactual=0; 
  lcd.begin(16,2); 
  lcd.clear();
  Tactual=obtenerTemp();
  Tmin=Tactual; 
  Tmax=Tactual;
  pinMode (2,INPUT); 
  pinMode (3, INPUT); 
}

void loop() {
  float Tactual=0;
  Tactual=obtenerTemp();
  if (Tactual<Tmin) { Tmin = Tactual; }
  if (Tactual>Tmax) { Tmax = Tactual; }
  mostrarTempActual(Tactual);  
  delay(100);
  if (digitalRead(2) == HIGH) { 
    Tmin = Tactual; 
    Tmax = Tactual; 
  }
  if (digitalRead(3) == HIGH) {
    mostrarTempMin(); delay(3000);  
    mostrarTempMax(); delay(3000); 
  }
}

float obtenerTemp(){ return (((analogRead(5)*5.0)/1024)-0.5)*100; }

void mostrarTempActual(float Tactual){
   lcd.clear(); 
   lcd.setCursor(0,0); 
   lcd.print("Temperatura actual:");
   lcd.setCursor(0,1);  
   lcd.print(Tactual);  
   lcd.print(" C/");
}

void mostrarTempMin(){
   lcd.clear(); 
   lcd.setCursor(0,0); 
   lcd.print("Temperatura mínima:");
   lcd.setCursor(0,1);  
   lcd.print(Tmin);  
   lcd.print(" C/");
}

void mostrarTempMax(){
   lcd.clear(); 
   lcd.setCursor(0,0); 
   lcd.print("Temperatura máxima:");
   lcd.setCursor(0,1); 
   lcd.print(Tmax);  
   lcd.print(" C/");
}




